//! 数据源加载选项定义
//! 对应 C# 版本的数据源加载选项

use serde::{Deserialize, Serialize};

/// 数据源加载选项
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
pub struct DataSourceLoadOptions {
    /// 数据源ID
    pub data_source_id: Option<String>,
    /// 过滤条件
    pub filter: Option<String>,
    /// 排序字段
    pub order_by: Option<String>,
    /// 是否降序
    pub is_desc: Option<bool>,
    /// 跳过记录数
    pub skip: Option<i32>,
    /// 获取记录数
    pub take: Option<i32>,
    /// 包含的字段
    pub include_fields: Option<Vec<String>>,
    /// 排除的字段
    pub exclude_fields: Option<Vec<String>>,
    /// 是否包含总数
    pub include_total: Option<bool>,
    /// 其他自定义选项
    pub custom_options: Option<serde_json::Value>,
}